<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<%@ include file="/common/common.jsp"%>
<%-- <%@ taglib prefix="m" uri="/WEB-INF/taglib/selector" %> --%>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>VIP旅客信息维护</title>
<script type="text/javascript" src="script/esayui-1.3.3/jquery-1.7.2.min.js"></script>

<script type="text/javascript">

//获取真实长度
function realLength(ctr) 
{ 
    var sum=0;
    for(var i=0;i <ctr.length;i++) 
    { 
    	/* var sum=0;
	    for(var i=0;i <ctr.length;i++) 
	    { 
	        if((ctr.charCodeAt(i) >=0) && (ctr.charCodeAt(i) <=255)) 
	        {sum=sum+1; } //判断该字符是不是汉字或者汉字标点(Unicode码大于0小于255)，不是加一
	        else 
	        {sum=sum+2; }
	    } 
	    return sum; */
	    return ctr.length;
    } 
    return sum; 
};
//初始化验证提示为隐藏
$(function(){	
	$.each($('#vipForm').find('span'),function(index,item){
		var tem=item.id.substr(item.id.length-3,item.id.length);
		if(tem=="Mes")
		{
			$('#'+item.id+'').hide();
		}
	});
});
//初始化绑定失去焦点事件，自动显示或隐藏验证提示
$(function() {
	$('#vipForm *').each(function(index,elem){ //遍历vidForm下所有的元素
		var temElem=elem.id.substr(elem.id.length-3,elem.id.length);
		if(elem.id!=''&&temElem!="Mes"){       //过滤vidForm下id为空，并且不是验证提示的元素
			 $('#'+elem.id+'').bind("blur", function(){
	        	$.each($('#vipForm').find('span'),function(index,item){
	    			var tem=item.id.substr(item.id.length-3,item.id.length);
	    			if(tem=="Mes")
	    			{
	    				$('#'+item.id+'').hide();
	    			}
	    		});
	        	isMust();
            });
		}
	});
}); 
//初始化页面--新增
function init(){
	$("#ids").val(null);
	
	//初始化状态--正常
	$("input[name='status'][value=N]").attr("checked", true);
	//初始性别--M男
	$("input[name='sex'][value=M]").attr("checked", true);
		
	//获取证件类型
	$("#idTypew").combobox({
		url : "${ctx}/getIdTypeList.action",
		valueField : 'dataDesc',
		textField : 'dataDesc',
		panelHeight : 150,
		editable:false,
		//onSelect : function(rec) {
		//return rec.type;                                //选中下拉触发事件
		//$("#namew").removeAttr("disabled");
		//alert(rec.type);
		//return rec.type;
		//},
		onLoadSuccess : function() { //返回Success 回调方法
			var data = $("#idTypew").combobox("getData");
			if (data.length > 0) {
				$("#idTypew").combobox("select", "--请选择--"); //自动选中下拉的第一条数据
			}
		}
	});
	//获取证件类型--联系人(放到此处，直接加载)
	$("#contactIdTypew").combobox({
		url : "${ctx}/getIdTypeList.action",
		valueField : 'dataDesc',
		textField : 'dataDesc',
		panelHeight : 150,
		editable:false,
		onLoadSuccess : function() { //返回Success 回调方法
			var data = $("#contactIdTypew").combobox("getData");
			if (data.length > 0) {
				$("#contactIdTypew").combobox("select", "--请选择--"); //自动选中下拉的第一条数据
			}
		}
	});
};
//初始化页面--修改
function initUpd(data){
	$("#ids").val(data.id);

	//初始性别(M男:,F:女)
	if (data.sex == 'M') {
		$("input[name='sex'][value=M]").attr("checked", true);
	} else if (data.sex == 'F') {
		$("input[name='sex'][value=F]").attr("checked", true);
	} else {
		$("input[name='sex'][value=]").attr("checked", true);
    }
	//获取证件类型
	var temIdType=data.idType;
	$("#idTypew").combobox({
		url : "${ctx}/getIdTypeList.action",
		valueField : 'dataDesc',
		textField : 'dataDesc',
		panelHeight : "auto",
		editable:false,
		onLoadSuccess : function() { //返回Success 回调方法
			var data = $("#idTypew").combobox("getData");
			if (data.length > 0) {
				$("#idTypew").combobox("select", temIdType);
			}
		}
	});
	
	//获取联系人证件类型
	
	var temContactIdType=data.contactIdType?data.contactIdType:'';
	$("#contactIdTypew").combobox({
		url : "${ctx}/getIdTypeList.action",
		valueField : 'dataDesc',
		textField : 'dataDesc',
		panelHeight : 150,
		editable:true,
		onLoadSuccess : function() { //返回Success 回调方法
			var data = $("#contactIdTypew").combobox("getData");			
			if (temContactIdType=='') {
				$("#contactIdTypew").combobox("select", "--请选择--"); //自动选中下拉的第一条数据
			}else{
				$("#contactIdTypew").combobox("select", temContactIdType); //自动选中下拉的第一条数据
			}
		}
	});

    $("#paxNamew").val(data.paxName);
    //特殊处理，因为此字段是把旅客姓(英文)和旅客名(英文)合并成一个字段付给paxFirstName
    if(typeof(data.paxFirstName)!='undefined'){
		$("#paxFirstNamew").val(data.paxFirstName.substring(0,(data.paxFirstName.length)-(data.paxLastName.length)));
    }
	$("#paxLastNamew").val(data.paxLastName);
	$("#idNow").val(data.idNo);
	$("#birthDtw").val(data.birthDt?data.birthDt.split(" ")[0]:"");
	$("#telw").val(data.tel);
	$("#emailw").val(data.email);
	$("#paxTypew").val(data.paxType);
	$("#jobw").val(data.job);
	$("#appellationw").val(data.appellation);
	$("#compNamew").val(data.compName);
	$("#contactNamew").val(data.contactName);
	$("#contactTelw").val(data.contactTel);
	$("#contactJobw").val(data.contactJob);
	$("#contactIdTypew").val(data.contactIdType);
	$("#contactIdNow").val(data.contactIdNo);	
    $("#memow").val(data.memo);
};

//验证填写类型
function isMust(){
	var rtn=true;
	
	//字面量的声明方式
	var numReg=/^[0-9]*$/; //数字格式
	var mailReg=/^(\w)+(\.\w+)*@(\w)+((\.\w+)+)$/; //电子邮件格式
	var telReg = /^(0[0-9]{2,3}\-)?([2-9][0-9]{6,7})+(\-[0-9]{1,4})?$/;    //固定电话号码格式
    var mobileReg = /^(((13[0-9]{1})|(15[0-9]{1})|(18[0-9]{1}))+\d{8})$/; //手机电话号码格式
    var specialWord=/^[\u4e00-\u9fa5a-zA-Z0-9\s]+$/; //特殊字符
    
    if($('#paxNamew').val()==''){
		$("#paxNameMes").show();
		rtn=false;
    }else{    	
    	if(!specialWord.test($('#paxNamew').val())){
			$("#paxNameWordMes").show();
			rtn = false;
		}else if(realLength($('#paxNamew').val())>50){
    		$("#paxNameLengthMes").show();
    		rtn=false;
    	}
    };
    if($('#paxFirstNamew').val()!=''){
    	if(realLength($('#paxFirstNamew').val())>30){
	    	$("#paxFirstNameLengthMes").show();
			rtn=false;
    	}
    };
    if($('#paxLastNamew').val()!=''){
    	if(realLength($('#paxLastNamew').val())>30){
	    	$("#paxLastNameLengthMes").show();
			rtn=false;
    	}
    };
	
    if($('#idNow').val()==''){ //证件号是否必填
		$("#idNoMes").show();
		rtn=false;
    }else{
    	if(realLength($('#idNow').val())>20){
    		$("#idNoLengthMes").show();
    		rtn=false;
    	}
    };
    
    /** 验证是否选择证件类型 */		
	var temIdType = $('#idTypew').combobox('getValue');
	if (temIdType == '' || temIdType == '--请选择--') {
		$("#idTypeMes").show();
		rtn = false;
	};
    
    if($('#contactIdNow').val()!=''){
		if(realLength($('#contactIdNow').val())>20){
			$("#contactIdNoLengthMes").show();
			rtn=false;
		}
    };
    if($('#telw').val()!=''){
    	if(realLength($('#telw').val())>1000){
			$("#telLengthMes").show();
			rtn=false;
		}
    };
    if($('#contactTelw').val()!=''){
		/* if(!(telReg.test($('#contactTelw').val())||mobileReg.test($('#contactTelw').val()))){
			rtn=false;
			$("#contactTelMes").show();
		} */
    };
    
    if($('#emailw').val()!=''){
		if(!mailReg.test($('#emailw').val())){
			$("#emailMes").show();
			rtn=false;
		}
		else if(realLength($('#emailw').val())>50){
			$("#emailLengthMes").show();
			rtn=false;
		}
    };
    if($('#appellationw').val()!=''){
		if(realLength($('#appellationw').val())>16){
			$("#appellationLengthMes").show();
			rtn=false;
		}
    };
    if($('#jobw').val()!=''){
    	if(realLength($('#jobw').val())>1000){
			$("#jobLengthMes").show();
			rtn=false;
		}
    };
    if($('#contactNamew').val()!=''){
    	if(realLength($('#contactNamew').val())>50){
			$("#contactNameLengthMes").show();
			rtn=false;
		}
    };
    if($('#contactTelw').val()!=''){
    	if(realLength($('#contactTelw').val())>1000){
			$("#contactTelLengthMes").show();
			rtn=false;
		}
    };
    if($('#contactJobw').val()!=''){
    	if(realLength($('#contactJobw').val())>1000){
			$("#contactJobLengthMes").show();
			rtn=false;
		}
    };
    if($('#compNamew').val()!=''){
    	if(realLength($('#compNamew').val())>160){
			$("#compNameMes").show();
			rtn=false;
		}
    };
    if($('#memow').val()!=''){
    	if(realLength($('#memow').val())>500){
			$("#memoLengthMes").show();
			rtn=false;
		}
    };
    
    return rtn;
};

//根据旅客证件号判断是否存在此记录
function isExistsVIPInfo() {
	var rtn = true;

	//设置同步验证。不然异步验证就没意义
	$.ajaxSetup({
		async : false
	});
	$.post('${ctx}/queryisExistsVIPInfo.action', $("#vipForm").serializeArray(), function(data) {
		if (!data) {
			rtn = false;
			$("#idNoExistMes").show();
		}
	});
	return rtn;
};

function submitForm() {
	
	//验证填写类型
	if(!isMust()){return;}
	//根据旅客证件号判断是否存在此记录
    if(!isExistsVIPInfo()){return;}
    //额外处理--	联系人证件类型
	var contactIdType = $('#contactIdTypew').combobox('getValue');
	if (contactIdType == '' || contactIdType == '--请选择--') {
		$("#contactIdTypew").combobox("select", '');
	}
	
	I.get('ui.Loading',function(o){
		
	  var loading = I.ui.Loading.create();
		var path = "${ctx}/handleVIPInfo.action";
		$.post(path, $("#vipForm").serializeArray(), function(data) {	
			if (data.status == 1) {
				$.messager.alert('提示:', '操作成功', 'info');
				$("#btn_save").linkbutton('disable');
				$("#MyPopWindow").window("close");
				$('#vipTable').datagrid('reload');//刷新数据
			} else {
				$.messager.alert('提示', data.object, 'warning');
			}
		});
	
    	loading.close();
	});
};

function getUrlPara(paraName){  
	 var sUrl  =  location.href; 
	 var sReg  =  "(?:\\?|&){1}"+paraName+"=([^&]*)";
	 var re=new RegExp(sReg,"gi"); 
	 re.exec(sUrl); 
	 return RegExp.$1; 
} 

function firstMethod() {
	var action = getUrlPara("action");
	if("add" == action) {
		init();
	} else if("update" == action) {
		var data = getUrlPara("data");
		initUpd(data);
	} 
}

window.onload = firstMethod;
</script>
</head>
<body>
	<div class="popContain">
		<form id="vipForm">
			<table style="border-spacing: 3px">
			   <tr>
					<td class="col11">旅客姓名</td>
					<td class="col12" style="width: 368px;">
						<input type="text" id="paxNamew" name="paxName" style="width: 190px;"/> 
						<span style='color:red;'>*
						<span id='paxNameMes' style='color:red;'>请填写旅客姓名!</span>
						<span id='paxNameLengthMes' style='color:red;'>最大长度为50!</span>
						<span id='paxNameWordMes' style='color:red;'>不能包含特殊字符!</span>
						</span>
						<input type="hidden" id="ids" name="ids" />
					</td>
					<td class="col11">性别</td>
					<td class="col12" style="width: 368px;">
						<input type="radio" name="sex"
							value="M" id="sexw" style="vertical-align:middle;" /><label style="vertical-align:middle;">男</label>
						<input type="radio" name="sex"
							value="F" id="sexw" style="vertical-align:middle;" /><label style="vertical-align:middle;">女</label>
					</td>
				</tr>
				<tr>
					<td class="col11">旅客姓(英文)</td>
					<td class="col12">
						<input type="text" id="paxFirstNamew" name="paxFirstName" style="width: 190px;"/>
						<span id='paxFirstNameLengthMes' style='color:red;'>最大长度为30!</span>
					</td>
					<td class="col11">旅客名(英文)</td>
					<td class="col12">
						<input type="text" id="paxLastNamew" name="paxLastName" style="width: 190px;"/>
						<span id='paxLastNameLengthMes' style='color:red;'>最大长度为30!</span>
					</td>
				</tr>
				<tr>
					<td class="col11">出生日期</td>
					<td class="col12">				
						<input class="Wdate" id="birthDtw" name="birthDt" onclick="WdatePicker({dateFmt:'yyyy-MM-dd',errDealMode:1})" style="width: 193px;"/>
					</td>
					<td class="col11">证件类型</td>
					<td class="col12">
						<m:easyUISelector id="idTypew" name="idType"
							valueField="id" textField="value" editable="true" upperCase="true" 
							clearNull="true" width="197" panelHeight="200"></m:easyUISelector>
						<span style='color:red;'>*<span id='idTypeMes' style='color:red;'>请填写证件类型!</span></span>
					</td>
				</tr>
				<tr>
					<td class="col11">证件号</td>
					<td class="col12">
						<input type="text" id="idNow" name="idNo" style="width: 190px;"/>
						<span style='color:red;'>*
						<span id='idNoMes' style='color:red;'>请填写证件号!</span>
						<span id='idNoLengthMes' style='color:red;'>最大长度为20!</span>
						<span id='idNoExistMes' style='color:red;'>此证件号已经存在!</span>
						</span>
					</td>
					<td class="col11">联系电话</td>
					<td class="col12">
						<input type="text" id="telw" name="tel" style="width: 190px;"/>
						<span id='telLengthMes' style='color:red;'>最大长度为1000!</span>
					</td>
				</tr>				
				<tr>
					<td class="col11">称谓</td>
					<td class="col12">
						<input type="text" id="appellationw" name="appellation" style="width: 190px;"/> 
						<span id='appellationLengthMes' style='color:red;'>最大长度为16!</span>
					</td>
					<td class="col11">职务</td>
					<td class="col12">
						<input type="text" id="jobw" name="job" style="width: 190px;"/>
						<span id='jobLengthMes' style='color:red;'>最大长度为1000!</span>
					</td>
				</tr>
				<tr>
					<td class="col11">邮箱</td>
					<td class="col12">
						<input type="text" id="emailw" name="email" style="width: 190px;"/>
						<span id='emailLengthMes' style='color:red;'>最大长度为50!</span>
						<span id='emailMes' style='color:red;'>标准格式XXXX@XXXX.XXX!</span>
					</td>
					<td class="col11">单位名称</td>
					<td class="col12">
						<input type="text" id="compNamew" name="compName" style="width: 190px;"/>
						<span id='compNameMes' style='color:red;'>最大长度为160!</span>
					</td>
				</tr>
				<tr>
					<td class="col11">联系人姓名</td>
					<td class="col12">
						<input type="text" id="contactNamew" name="contactName" style="width: 190px;"/>
						<span id='contactNameLengthMes' style='color:red;'>最大长度为50!</span>
					</td>
				</tr>
				<tr>
					<td class="col11">联系人职务</td>
					<td class="col12">
						<input type="text" id="contactJobw" name="contactJob" style="width: 190px;"/> 
						<span id='contactJobLengthMes' style='color:red;'>最大长度为1000!</span>
					</td>
					<td class="col11">联系人电话</td>
					<td class="col12">
						<input type="text" id="contactTelw" name="contactTel" style="width: 190px;"/>
						<span id='contactTelLengthMes' style='color:red;'>最大长度为1000!</span>
					</td>
				</tr>
				<tr>
				    <td class="col11">联系人证件类型</td>
					<td class="col12">
						<m:easyUISelector id="contactIdTypew" name="contactIdType"
							valueField="id" textField="value" editable="true" upperCase="true" 
							clearNull="true" width="197" panelHeight="200"></m:easyUISelector>
					</td>
					<td class="col11">联系人证件号</td>
					<td class="col12"  colspan="3">
						<input type="text" id="contactIdNow" name="contactIdNo" style="width: 190px;"/>
						<span id='contactIdNoLengthMes' style='color:red;'>最大长度为20!</span>
					</td>
				</tr>
				<tr>
					<td class="col11">备注</td>
					<td class="col12" colspan="3">
						<textarea name="memo" id="memow"
							style="width: 98%; height:101px; resize: none; font-family: Times, Garamond, serif; font-weight: normal; font-size: 15px; font line-height: 21pt;"></textarea>
							<span id='memoLengthMes' style='color:red;'>最大长度为500!</span>
					</td>
				</tr>
				<tr align="center">
					<td colspan="4"><a href="javascript:submitForm()"
						class="easyui-linkbutton" iconCls="icon-save" id="btn_save" style="margin-top: 25px;">保存</a><a
						href="#" class="easyui-linkbutton" iconCls="icon-cancel" style="margin-top: 25px;"
						onclick="$('#MyPopWindow').window('close');">取消</a></td>
				</tr>
			</table>
		</form>
	</div>
</body>
</html>